package com.yigerende.service;


import com.yigerende.model.Tag;

import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;


/*
* 关于所有标签的方法
* */
public interface TagService {

    //新增分类(传递用户输入的分类，从数据库查询到返回分类)
    public Tag saveTag(Tag tag);

    //显示所有分类(通过id查询分类)
    public Tag getTag(Long id);

    //查询用户输入的名字是否存在数据库里面
    public Tag getTagByName(String name);//查询分类名数据库里面有没有

    //分页查询
    public Page<Tag> listTag(Pageable pageable);

    //修改分类名称(通过id修改分类)
    public Tag updateTag(Long id,Tag tag);

    //删除分类(通过id来删除分类)
    public void deleteTag(Long id);

    //所有数据
    public List<Tag> listTag();

    //通过博客的标签id传递查询标签对象模型
    public List<Tag> listTag(String ids);


    /*上面是管理页面的，下面是用户显示页*/


    //通过每一个分类有多少个博客数量来排序的
    public List<Tag> listTagTop(Integer size);
}
